<html>
	<head>
		<meta charset="utf-8"/>
		<title>BBuffer</title>
		<link rel="stylesheet" type="text/css" href="../style.css"/>
	</head>
	<body>
		<h1>BBuffer</h1>
		<p>Inherites from <a href="BStream.html">BStream</a></p>
		<h2>public</h2>
		<table id="public">
			<tr><td align="right"/><td><a href="#BBuffer(int)">BBuffer</a>(int size = 0);</td></tr>
			<tr><td align="right"/><td><a href="#BBuffer(const BBuffer&)">BBuffer</a>(const BBuffer& other);</td></tr>
			<tr><td align="right"/><td><a href="#~BBuffer()">~BBuffer</a>();</td></tr>
			<tr><td align="right">void </td><td><a href="#setBytes(const BByte*, int)">setBytes</a>(const BByte* data, int size);</td></tr>
			<tr><td align="right">void </td><td><a href="#setBytes(const BByteArray&)">setBytes</a>(const BByteArray& data);</td></tr>
			<tr><td align="right">const BByteArray& </td><td><a href="#bytes()">bytes</a>() const;</td></tr>
			<tr><td align="right">BByteArray& </td><td><a href="#bytes()">bytes</a>();</td></tr>
			<tr><td align="right">bool </td><td><a href="#empty()">empty</a>() const;</td></tr>
			<tr><td align="right">bool </td><td><a href="#resize(int)">resize</a>(int size);</td></tr>
			<tr><td align="right">void </td><td><a href="#reset()">reset</a>();</td></tr>
			<tr><td align="right">void </td><td><a href="#clear()">clear</a>();</td></tr>
			<tr><td align="right">bool </td><td><a href="#seek(int)">seek</a>(int offset) const;</td></tr>
			<tr><td align="right">bool </td><td><a href="#wseek(int)">wseek</a>(int offset);</td></tr>
			<tr><td align="right">bool </td><td><a href="#isBegin()">isBegin</a>() const;</td></tr>
			<tr><td align="right">bool </td><td><a href="#isEnd()">isEnd</a>() const;</td></tr>
			<tr><td align="right">int </td><td><a href="#size()">size</a>() const;</td></tr>
			<tr><td align="right">int </td><td><a href="#offset()">offset</a>() const;</td></tr>
			<tr><td align="right">bool </td><td><a href="#read(void*, int)">read</a>(void* data, int size) const;</td></tr>
			<tr><td align="right">bool </td><td><a href="#write(const void*, int)">write</a>(const void* data, int size);</td></tr>
			<tr><td align="right">void </td><td><a href="#operator = (const BByteArray&)">operator = </a>(const BByteArray& bytes);</td></tr>
			<tr><td align="right">void </td><td><a href="#operator = (const BString&)">operator = </a>(const BString& str);</td></tr>
			<tr><td align="right">void </td><td><a href="#operator = (const char*)">operator = </a>(const char* cstr);</td></tr>
			<tr><td align="right">using </td><td><a href="#BStream::read;()">BStream::read;</a></td></tr>
			<tr><td align="right">using </td><td><a href="#BStream::write;()">BStream::write;</a></td></tr>
		</table>
		<div id="desc">
			<h2>Detailed Description : </h2>
			<p>BBuffer is a block of data, it provides the methods as stream.</p>
		</div>
		<h2 id="docs">Member Documentation</h2>
		<div id="BBuffer(int)">
			<h3>BBuffer(int size = 0);</h3>
			<p>Constructs buffer of size.</p>
		</div>
		<div id="BBuffer(const BBuffer&)">
			<h3>BBuffer(const BBuffer& other);</h3>
			<p>Constructs buffer copy form another buffer.</p>
		</div>
		<div id="~BBuffer()">
			<h3>~BBuffer();</h3>
			<p>Destroys the buffer.</p>
		</div>
		<div id="setBytes(const BByte*, int)">
			<h3>void setBytes(const BByte* data, int size);</h3>
			<p>Copys the data of size to this buffer.</p>
		</div>
		<div id="setBytes(const BByteArray&)">
			<h3>void setBytes(const BByteArray& data);</h3>
			<p>Copys the data of byte array to this buffer.</p>
		</div>
		<div id="bytes()">
			<h3>const BByteArray& bytes() const;</h3>
			<p>Get the data of buffer.</p>
		</div>
		<div id="bytes()">
			<h3>BByteArray& bytes();</h3>
		</div>
		<div id="empty()">
			<h3>bool empty() const;</h3>
			<p>Checks if the buffer is empty, this don't care the bytes value but the size of bytes.</p>
		</div>
		<div id="resize(int)">
			<h3>bool resize(int size);</h3>
			<p>Resizes the buffer.</p>
		</div>
		<div id="reset()">
			<h3>void reset();</h3>
		</div>
		<div id="clear()">
			<h3>void clear();</h3>
			<p>Clear this buffer, release the momery.</p>
		</div>
		<div id="seek(int)">
			<h3>bool seek(int offset) const;</h3>
			<p>Moves the offset value.</p>
		</div>
		<div id="wseek(int)">
			<h3>bool wseek(int offset);</h3>
		</div>
		<div id="isBegin()">
			<h3>bool isBegin() const;</h3>
			<p>Checks if the offset is at the begining.</p>
		</div>
		<div id="isEnd()">
			<h3>bool isEnd() const;</h3>
		</div>
		<div id="size()">
			<h3>int size() const;</h3>
		</div>
		<div id="offset()">
			<h3>int offset() const;</h3>
		</div>
		<div id="read(void*, int)">
			<h3>bool read(void* data, int size) const;</h3>
		</div>
		<div id="write(const void*, int)">
			<h3>bool write(const void* data, int size);</h3>
		</div>
		<div id="operator = (const BByteArray&)">
			<h3>void operator = (const BByteArray& bytes);</h3>
		</div>
		<div id="operator = (const BString&)">
			<h3>void operator = (const BString& str);</h3>
		</div>
		<div id="operator = (const char*)">
			<h3>void operator = (const char* cstr);</h3>
		</div>
		<div id="BStream::read;()">
			<h3>using BStream::read;</h3>
		</div>
		<div id="BStream::write;()">
			<h3>using BStream::write;</h3>
		</div>
	</body>
</html>